package com.ruoyi.gd.wgd.service;

import com.ruoyi.gd.fj.domain.bo.ZFujianBo;
import com.ruoyi.gd.wgd.domain.ZWgd;
import com.ruoyi.gd.wgd.domain.vo.ZWgdVo;
import com.ruoyi.gd.wgd.domain.bo.ZWgdBo;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.core.domain.PageQuery;
import org.springframework.core.io.Resource;

import java.util.Collection;
import java.util.List;

/**
 * 完工单Service接口
 *
 * @author ruoyi
 * @date 2024-03-17
 */
public interface IZWgdService {

    /**
     * 查询完工单
     */
    ZWgdVo queryById(String id);

    /**
     * 查询完工单列表
     */
    TableDataInfo<ZWgdVo> queryPageList(ZWgdBo bo, PageQuery pageQuery);

    /**
     * 查询首页数据
     * @param zWgdBo
     * @param pageQuery
     * @return
     */
    TableDataInfo<ZWgdVo> queryPageHomeList(ZWgdBo zWgdBo, PageQuery pageQuery);

    /**
     * 查询完工单列表
     */
    List<ZWgdVo> queryList(ZWgdBo bo);

    /**
     * 新增完工单
     */
    Boolean insertByBo(ZWgdBo bo);

    /**
     * 修改完工单
     */
    Boolean updateByBo(ZWgdBo bo);

    /**
     * 校验并批量删除完工单信息
     */
    Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid);

    /**
     * 导出选择数据
     * @param ids
     * @return
     */
    List<ZWgdVo> queryListByIds(String ids);

    Boolean authData(String[] ids);

    ZFujianBo genBjd(ZWgdBo bo);

    byte[] genBjdData(ZFujianBo bo);

    List<ZWgdVo> selectByZbbhId(String zbbh);

    int updateYhyqrZt(List<String> asList);

    List<ZWgdVo> selectByIds(String[] split);

    int batchUpdateById(List<String> wgdIds);

    List<ZWgdVo> selectWcl();

}
